Method for maintaining common data across multiple platforms

ABSTRACT

Systems and methods are described for maintaining a user&#39;s common data across multiple platforms. The common data is information about the user and graphical and design elements of publications that should be consistently presented across online, other electronic, and non-electronic platforms, such as websites, social networking profiles, electronic and printed business listings, email and print newsletters, business cards, letterhead, and the like. The common data may be stored and updated by a centralized or distributed system including one or more servers communicating with the platforms and with a content database that retains the common data in a stored data structure. The system may provide an interface to the user, receive common data elements input by the user, add the common data elements to the stored data structure, and distribute the common data elements to the platforms. The system may identify which platforms require which elements of the common data.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is related to U.S. patent application Ser. No. ______,filed on ______, and entitled “SYSTEM FOR MAINTAINING COMMON DATA ACROSSMULTIPLE PLATFORMS.”

FIELD OF THE INVENTION

The present invention generally relates to data storage andoptimization, and, more specifically, to systems and methods forefficiently and effectively propagating changes to information in adatabase across multiple media platforms.

BACKGROUND OF THE INVENTION

The Internet comprises a vast number of computers and computer networksthat are interconnected through communication links. The interconnectedcomputers exchange information using various services. In particular, aserver computer system, referred to herein as a web server, may connectthrough the Internet to a remote client computer system and may send, tothe remote client computer system upon request, one or more websitescontaining one or more graphical and textual web pages of information. Arequest is made to the web server by visiting the website's address,known as a Uniform Resource Locator (“URL”). Upon receipt, therequesting device can display the web pages. The request and display ofthe websites are typically conducted using a browser. A browser is aspecial-purpose application program that effects the requesting of webpages and the displaying of web pages.

Browsers are able to locate specific websites because each website,resource, and computer on the Internet has a unique Internet Protocol(IP) address. Presently, there are two standards for IP addresses. Theolder IP address standard, often called IP Version 4 (IPv4), is a 32-bitbinary number, which is typically shown in dotted decimal notation,where four 8-bit bytes are separated by a dot from each other (e.g.,64.202.167.32). The notation is used to improve human readability. Thenewer IP address standard, often called IP Version 6 (IPv6) or NextGeneration Internet Protocol (IPng), is a 128-bit binary number. Thestandard human readable notation for IPv6 addresses presents the addressas eight 16-bit hexadecimal words, each separated by a colon (e.g.,2EDC:BA98:0332:0000:CF8A:000C:2154:7313).

IP addresses, however, even in human readable notation, are difficultfor people to remember and use. A URL is much easier to remember and maybe used to point to any computer, directory, or file on the Internet. Abrowser is able to access a website on the Internet through the use of aURL. The URL may include a Hypertext Transfer Protocol (HTTP) requestcombined with the website's Internet address, also known as thewebsite's domain name. An example of a URL with a HTTP request anddomain name is: http://www.companyname.com. In this example, the “http”identifies the URL as a HTTP request and the “companyname.com” is thedomain name.

Domain names are much easier to remember and use than theircorresponding IP addresses. The Internet Corporation for Assigned Namesand Numbers (ICANN) approves some Generic Top-Level Domains (gTLD) anddelegates the responsibility to a particular organization (a “registry”)for maintaining an authoritative source for the registered domain nameswithin a TLD and their corresponding IP addresses. For certain TLDs(e.g., .biz, .info, .name, and .org) the registry is also theauthoritative source for contact information related to the domain nameand is referred to as a “thick” registry. For other TLDs (e.g., .com and.net) only the domain name, registrar identification, and name serverinformation is stored within the registry, and a registrar is theauthoritative source for the contact information related to the domainname. Such registries are referred to as “thin” registries. Most gTLDsare organized through a central domain name Shared Registration System(SRS) based on their TLD.

The process for registering a domain name with .com, .net, .org, andsome other TLDs allows an Internet user to use an ICANN-accreditedregistrar to register their domain name. For example, if an Internetuser, John Doe, wishes to register the domain name “mycompany.com,” JohnDoe may initially determine whether the desired domain name is availableby contacting a domain name registrar. The Internet user may make thiscontact using the registrar's webpage and typing the desired domain nameinto a field on the registrar's webpage created for this purpose. Uponreceiving the request from the Internet user, the registrar mayascertain whether “mycompany.com” has already been registered bychecking the SRS database associated with the TLD of the domain name.The results of the search then may be displayed on the webpage tothereby notify the Internet user of the availability of the domain name.If the domain name is available, the Internet user may proceed with theregistration process. Otherwise, the Internet user may keep selectingalternative domain names until an available domain name is found. Domainnames are typically registered for a period of one to ten years withfirst rights to continually re-register the domain name.

The information on web pages is in the form of programmed source codethat the browser interprets to determine what to display on therequesting device. The source code may include document formats,objects, parameters, positioning instructions, and other code that isdefined in one or more web programming or markup languages. One webprogramming language is HyperText Markup Language (“HTML”), and all webpages use it to some extent. HTML uses text indicators called tags toprovide interpretation instructions to the browser. The tags specify thecomposition of design elements such as text, images, shapes, hyperlinksto other web pages, programming objects such as JAVA applets, formfields, tables, and other elements. The web page can be formatted forproper display on computer systems with widely varying displayparameters, due to differences in screen size, resolution, processingpower, and maximum download speeds.

Websites can be generated from structured data stored in a database orother data store. In a basic implementation, the data can includemultiple records having a data type and content, and a web programminginterface can access the database, retrieve records having the desireddata types, and add the content of those records to one or more webpages. Additionally, data formats and schema exist that optimize thestructured data for inclusion on a website. For example, the Microdataformat is a set of HTML tags used to delineate types of data on a webpage. Microdata tags can be used in conjunction with a defined data typevocabulary, such as that provided by schema.org, to retain informationrelating to the data type of data extracted from the database and placedon the website. Retaining such information allows Internet searchengines to better understand the content of a website.

The Internet continues to be increasingly valuable to individuals andbusinesses alike. More people use the Web for everyday tasks, fromsocial networking, shopping, banking, and paying bills to consumingmedia and entertainment. E-commerce is growing, with businessesdelivering more services and content across the Internet, communicatingand collaborating online, and inventing new ways to connect with eachother. It is advantageous for individuals and businesses to maintain anonline presence, which may include presenting information about theindividual or business on multiple online platforms. For example, abusiness might have its own website at www.thebusiness.com, businesslistings on GOOGLE Places for Business and BING Places for Business, aprofile page on FACEBOOK, one or more blast email lists and a mobileapplication (“app”) that customers download to their mobile device.These platforms can have different virtual locations (i.e. differentdomains) and partially or fully incompatible formats, despite sharingcommon information.

Information that is typically common across platforms normally includesthe most important information. For individuals, this might be name,photo, phone number, TWITTER handle, blog or personal web page address,and the like. For businesses, this might be name, address, phone number,hours of operation, news feed, product information such as menus orinventory, and the like. Whether such information changes frequently oronly on rare occasion, it is very important to the individual orbusiness that the information is consistently presented across all ofits online platforms. Unfortunately, the incompatibilities betweenplatforms can require the individual or business to either manuallyupdate the information multiple times, or engage a web design firm tomaintain the information at some expense and with some risk of errors oromissions as the information is repeatedly updated.

Relatedly, an individual or business may wish to maintain a consistentvisual presentation, referred to herein as a theme, across itsplatforms. Platform incompatibility may prevent or limit the consistencyof the theme. For example, color schemes, graphic elements, and layoutsare all completely customizable for a standalone website, but FACEBOOKimposes a strict profile format where graphics and layout cannot beeasily carried over. It would be advantageous to identify the elementsof a theme that can be adapted for use on each platform, in order tobest provide the desired consistent presentation. Further, changes tothe theme could be more easily propagated across platforms.

Despite the increasing use of the Internet and other online orelectronic platforms, individuals and businesses still have physicalpresences and use printed collateral to convey some of the informationfrom their web presence. Again, the information conveyed on printedcollateral, such as flyers, brochures, catalogs, business cards,newsletters, and the like, can include name, contact information, andother information that must be kept consistent. Additionally, printedcollateral frequently determines or shares the theme or themes usedonline. Printed collateral can be designed electronically, using graphicdesign software such as ADOBE PHOTOSHOP, publishing software such asPAGEPLUS, and other software. These programs can store the informationand graphics to be printed in design files that can be accessed by otherprograms or interfaces.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is schematic diagram of a system and associated operatingenvironment in accordance with the present disclosure.

FIG. 2 is a diagram of an example common data set for an individual.

FIG. 3 is a diagram of an example common data set for a business.

FIG. 4 is a diagram of a template for a website platform according tothe present disclosure.

FIG. 5 is a diagram of a template for a social networking platformaccording to the present disclosure.

FIG. 6 is a diagram of a template for a first non-electronic platformaccording to the present disclosure.

FIG. 7 is a diagram of a template for a second non-electronic platformaccording to the present disclosure.

FIG. 8 is a flow diagram of a method for maintaining common data acrossmultiple platforms according to the present disclosure.

FIG. 9 is a flow diagram of a method for formatting common data to bedistributed to a platform according to the present disclosure.

FIG. 10 is a block diagram showing the functional components of a systemfor maintaining common data across multiple platforms according to thepresent disclosure.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

The present invention overcomes the aforementioned drawbacks byproviding a system and method for the maintenance of a user's commondata across multiple media platforms by storing the common data asstructured data in a database, formatting the common data according toone or more display formats required by each of the platforms, andtransmitting the formatted common data either to the platform, to theuser, or to an end-user, depending on the requirements of the platform.At least one of the platforms may be a website hosting service thatprovides the user's website to the public. The web server tasked withserving the website to requesting devices, also known as a hostingprovider, may perform one or more algorithms for the data maintenance.Alternatively, the web server may assign the maintenance to a relatedcomputer system, such as another web server, collection of web or otherservers, a dedicated data processing computer, or another computercapable of performing the maintenance algorithms. Alternatively, astandalone program may be delivered to and installed on a personalcomputing device, such as the user's desktop computer or mobile device,and the standalone program may be configured to cause the personalcomputing device to perform the maintenance algorithms. For clarity ofexplanation, and not to limit the implementation of the present methods,the methods are described below as being performed by a web server thatserves the website to requesting devices. The creation of web pages,documents, and printed collateral is described with a left-sidedprioritization for left-to-right reading countries; it will beunderstood that left and right directions may be reversed forright-to-left reading countries.

Common data, as used herein, may be any information that the user wantsto accurately and consistently maintain across a plurality of publicallyavailable platforms. That is, the user may desire each element of commondata to be the same on every platform. In accordance with the presentdisclosure, each common data element may be promptly updated on all or asubset of the platforms when the element is added or changed on oneplatform. A platform, as used herein, is a public or semi-private sourceof information on which a user may maintain information and allow theinformation to be presented to the public or to a limited audience. Aplatform may have one or more defined publishing formats that the webserver can emulate, or for which the web server can provide format-readycontent, as described further below. Platforms in accordance with thisdisclosure may include, without limitation: online platforms, such aswebsites, social network profiles, and content feeds and streamsincluding RSS feeds, blogs and vlogs, YOUTUBE channels and other videostreaming services, and the like; downloadable and other offline digitalplatforms, such as electronic newsletters, blast emails, PDFs and otherdocuments, programs, and the like; non-digital electronic platforms suchas radio and television broadcasts; and non-electronic platforms, suchas letterhead, flyers, brochures, print advertisements, and the like.

In one implementation, a method in accordance with this disclosure mayinclude receiving, from a user, content information for building awebsite for the user. The content information may be or include one ormore common data elements for a plurality of third-party platforms. Themethod may further include extracting the common data elements from thecontent information, identifying the common data elements that map toone or more display elements of each third-party platform, accessingeach third-party platform, and transmitting the identified common dataelements to the respective third-party platform. The method may furtherinclude storing the common data elements in a stored data structure,receiving one or more updated common data elements for the plurality ofthird-party platforms, and comparing the updated common data elements toone or more of the common data elements in the stored data structure.Then, for any of the updated common data elements that do not match thecommon data elements to which the updated common data elements arecompared, the method may include storing the updated common data elementin the stored data structure in place of the common data element, andtransmitting the updated common data element to one or more of theplurality of third-party platforms. The method may further includereceiving, from the user, authorization to access one or more of thethird-party platforms on behalf of the user.

In another implementation, a method in accordance with this disclosuremay include receiving one or more data elements comprising common datafor a plurality of platforms and comparing the data elements to one ormore elements of a stored data structure. If the data elements do notmatch the elements of the stored data structure to which the dataelements are compared, the method may include transmitting the dataelements to one or more of the plurality of platforms. The method mayfurther include determining that one or more of the data elements is anew common data element that does not correspond to any element of thestored data structure, and transmitting the new common data elements toone or more of the plurality of platforms. The method may furtherinclude providing an interface to a user and allowing the user to enterthe one or more data elements on the interface. The interface may beprovided on a web server and accessible by the user over the internet,or the interface may be provided on one of the platforms. Receiving theone or more data elements may include prompting the user to enter intothe interface information for building a website, receiving theinformation from the user, extracting the one or more data elements fromthe information, creating one or more web pages containing theinformation entered by the user, and storing the one or more web pagesas the stored data structure. Prompting the user to enter informationfor building a website may include retrieving a template for a web page,the template comprising one or more regions formatted to display commondata, and prompting the user to enter the information intended to bedisplayed in each of the regions.

Receiving the one or more data elements may include receiving the one ormore data elements from one of the plurality of platforms after the oneor more data elements are entered onto the platform. Alternatively,receiving the one or more data elements may include accessing one of theplatforms, polling the platform to determine whether any of the commondata has been modified, and retrieving the modified common data as theone or more elements. Transmitting the data elements to one or more ofthe plurality of platforms may include identifying one or more of theplatforms as requiring an update to the common data, formatting the dataelements according to one or more publishing formats of the identifiedplatforms, and sending the formatted data elements to the identifiedplatforms. Formatting the data elements may include identifying, fromone or more templates formatted according to one of the publishingformats, one or more of the templates as containing one or more of theelements of the data structure to which the received data elements arecompared. Formatting the data elements may further include identifying,within the one or more identified templates, one or more regionscontaining common data, and formatting the data elements for inclusionin the identified regions. The method may further include analyzing eachplatform to determine which of the elements of the stored data structuremap to each data field and customizable element provided by theplatform, which may be performed using one or more scoring algorithms.

The stored data structure may be contained within a content database,and the method may further include updating the stored data structurewith the data elements. Such updating may include one or both of:storing in the stored data structure any data element that does notmatch the element of the stored data structure to which the data elementis compared; and storing in the stored data structure any data elementthat is not comparable to an element of the stored data structure. Thestored data structure may be one or more web pages.

In another implementation, a method in accordance with this disclosuremay include storing, in one or more data structures, one or more firstdata elements comprising common data for a plurality of platforms, eachfirst data element having a data type. The method may further includereceiving one or more second data elements comprising common data forthe plurality of platforms, each second data element having a data type.The method may further include comparing second data elements to firstdata elements of the same data type. For each of the second dataelements that do not match the first data elements to which the seconddata elements are compared, the method may include storing in the datastructure the second data element in place of the first data element towhich it is compared. The method may further include determining thatone or more of the second data elements is a new common data elementthat does not correspond to any first data element, storing the newcommon data elements in one or more of the data structures, and storingone or more templates formatted according to one or more publishingformats of one or more of the platforms, each of the templates havingone or more regions for displaying common data from the one or more datastructures.

In another implementation, a method in accordance with this disclosuremay include receiving, from a web server, one or more data elementscomprising common data for a plurality of platforms, and storing each ofthe data elements according to a publishing format. The data elementsmay be formatted according to the publishing format upon receipt fromthe web server. The method may further include formatting the dataelements for the publishing format. The method may further includeproviding to the web server one or more data fields to which the webserver maps the one or more data elements. Receiving the one or moredata elements from the web server may include receiving a templateformatted according to the publishing format and comprising one or moreregions containing common data. Storing each of the data elements mayinclude storing the template.

In another implementation, a method in accordance with this disclosuremay include entering, into an interface, one or more data elementscomprising common data for a plurality of platforms, and causing theinterface to transmit the data elements to one or more servers. Theservers may be configured to compare the data elements to one or moreelements of a stored data structure and, if the data elements do notmatch the elements of the stored data structure to which the dataelements are compared, transmit the data elements to one or more of theplurality of platforms. The interface may be provided by one of theservers over the internet, or the interface may be provided on one ofthe platforms. Entering the data elements may include enteringinformation in response to a series of prompts on the interface. Theinformation may include the data elements and other data to be displayedon a website. The servers may be further configured to receive theinformation and generate one or more web pages using one or moretemplates. The method may further include selecting a desired templatefrom a plurality of templates. The method may further include providingthe one or more servers with access to each of the plurality ofplatforms.

In another implementation, a method in accordance with this disclosuremay include receiving one or more data elements comprising common datafor a plurality of platforms, and transmitting one or more of the dataelements to one or more of the platforms. The method may further includereceiving a first list of the platforms to which the data elements mustbe transmitted, and transmitting one or more of the data elements to oneor more of the platforms may include transmitting one or more of thedata elements to each platform on the first list. The method may furtherinclude receiving a second list of the data elements to be transmittedto each platform on the first list, and transmitting one or more of thedata elements to one or more of the platforms may include transmittingthe data elements to the platforms according to the second list.Furthermore or alternatively, transmitting one or more of the dataelements to one or more of the platforms may include identifying whichof the plurality of platforms should receive one or more of the dataelements. The data elements may be received from an interface or fromone of the platforms.

In another implementation, a system in accordance with this disclosuremay include a server in electronic communication with a plurality ofthird-party platforms. The server may be configured to receive, from auser, content information for building a website for the user. Thecontent information may include one or more common data elements for aplurality of third-party platforms. The server may be further configuredto extract the common data elements from the content information. Then,for each third-party platform, the server may be configured to identifythe common data elements that map to one or more display elements of thethird-party platform, access the third-party platform, and transmit theidentified common data elements to the third-party platform. The firstserver may receive the content information from the user by retrieving atemplate for a web page, the template comprising one or more regionsformatted to display common data, and prompting the user to enter theinformation intended to be displayed in each of the regions. The servermay be further configured to store the common data elements in a storeddata structure, receive one or more updated common data elements for theplurality of third-party platforms, compare the updated common dataelements to one or more of the common data elements in the stored datastructure, and, for any of the updated common data elements that do notmatch the common data elements to which the updated common data elementsare compared, store the updated common data element in the stored datastructure in place of the common data element and transmit the updatedcommon data element to one or more of the plurality of third-partyplatforms.

In another implementation, a system in accordance with this disclosuremay include a first server in electronic communication with a pluralityof platforms. The first server may have access to a stored datastructure containing one or more common data elements, and may beconfigured to receive one or more input data elements comprising commondata for the plurality of platforms, obtain a comparison of the inputdata elements to one or more of the common data elements in the storeddata structure, and, for each input data element that does not match acommon data element, transmit the input data element to one or more ofthe plurality of platforms. The system may obtain the comparison byquerying a content database containing the stored data structure. Thefirst server may contain the content database, or the system may includea second server that contains the content database and is remote fromand in electronic communication with the first server, or the contentdatabase may be contained on one or more of the platforms. The firstserver may transmit the input data elements to the platforms byidentifying one or more of the platforms as requiring an update to itscommon data, formatting the input data elements according to one or morepublishing formats of the identified platforms, and sending theformatted data elements to the identified platforms. Formatting theinput data elements may include: identifying, from one or more templatesformatted according to one of the publishing formats, one or more of thetemplates as containing one or more of the common data elements of thedata structure to which the input data elements are compared;identifying, within the one or more identified templates, one or moreregions containing common data; and, formatting the input data elementsfor inclusion in the identified regions. The first server may be furtherconfigured to determine that one or more of the input data elements is anew common data element that does not correspond to any common dataelement of the stored data structure, and to transmit the new commondata elements to one or more of the plurality of platforms.

The first server may be further configured to prompt the user to enterinformation for building a website, the information including the one ormore input data elements. The first server may received the informationfrom the user and extract the one or more input data elements from theinformation. The prompting for information may include retrieving atemplate for a web page, the template having one or more regionsformatted to display common data, and prompting the user to enter theinformation intended to be displayed in each of the regions. The firstserver may be further configured to analyze each platform to determinewhich of the common data elements of the stored data structure map toeach data field and customizable element provided by the platform, andmay use one or more scoring algorithms to analyze each platform. Thestored data structure may be one or more web pages.

The first server may be further configured to update the stored datastructure by storing in the stored data structure any input data elementthat does not match the common data element of the stored data structureto which the input data element is compared, and storing in the storeddata structure any input data element that is not comparable to a commondata element of the stored data structure. The first server may befurther configured to access one of the platforms, poll the platform todetermine whether any of its common data has been modified, and retrievethe modified common data as the one or more input data elements. Thesystem may further include an interface in electronic communication withthe first server. The interface may be configured to allow a user toenter the one or more input data elements on the interface. Theinterface may be provided on the first server and accessible by the userover the Internet, or the interface may be provided on one or more ofthe platforms. The input data elements may be received from one of theplurality of platforms after the input data elements are entered ontothe platform.

In another implementation, a system in accordance with the presentdisclosure may include a content database located on one or morecomputers. The content database may be configured to: store in one ormore data structures one or more first data elements comprising commondata for a plurality of platforms, each first data element having a datatype; receive one or more second data elements comprising common datafor the plurality of platforms, each second data element having a datatype; and, for each of the second data elements that do not match thefirst data elements to which the second data elements are compared,store in the data structure the second data element in place of thefirst data element to which it is compared. The content database may befurther configured to determine that one or more of the second dataelements is a new common data element that does not correspond to anyfirst data element, and to store the new common data elements in one ormore of the data structures. The content database may be furtherconfigured to store one or more templates formatted according to one ormore publishing formats of one or more of the platforms, each of thetemplates having one or more regions for displaying common data from theone or more data structures.

In another implementation, a system in accordance with the presentdisclosure may include one or more platforms, each platform beingconfigured to present a subset of a user's information, and eachplatform's subset of the user's information comprising one or morecommon data elements. Each platform may have access, through electroniccommunication with a server, to a stored data structure containing thecommon data elements. Each platform may be configured to receive, fromthe server, one or more updated common data elements, and to replace oneor more of the common data elements in the platform's subset of theuser's information with the one or more updated common data elements.Each platform may be further configured to receive one or more inputdata elements comprising common data, and to transmit the one or moreinput data elements to the server.

The system may also include a data processing module for each platform,the data processing modules being in electronic communication with eachother, having access to a stored data structure containing the commondata elements, and being configured to: receive one or more input dataelements comprising common data for the plurality of platforms; obtain acomparison of the input data elements to one or more of the common dataelements in the stored data structure; and, for each input data elementthat does not match a common data element, transmit the input dataelement to one or more of the other data processing modules. Thecomparison may be obtained by querying a content database containing thestored data structure. The content database may reside on one or more ofthe platforms, or the system may further comprise a server containingthe content database, the server being in electronic communication witheach of the data processing modules.

In another implementation, a system in accordance with the presentdisclosure may include an interface for communicating with one or moreplatforms, each platform being configured to present a subset of auser's information, and each platform's subset of the user's informationcomprising one or more common data elements. The interface may beconfigured to receive one or more input data elements comprising commondata, transmit the input data elements to one of the platforms if theinput data elements are received from a server, and transmit the inputdata elements to the server if the input data elements are received fromone of the platforms or from the user.

In another implementation, a system in accordance with the presentdisclosure may include one or more computers in electronic communicationwith a server, the one or more computers being configured to: receive,from a user, content information comprising one or more common dataelements for a plurality of third-party platforms; extract the commondata elements from the content information; and transmit the common dataelements to the server. The server may be in electronic communicationwith a plurality of third-party platforms, and may be configured toidentify the common data elements that map to one or more displayelements of each third-party platform and transmit the identified commondata elements to that third-party platform. The content information maybe used to build a website for the user.

In any implementation, the plurality of platforms may include one ormore of online platforms, offline electronic platforms, andnon-electronic platforms. The online platforms may include at least onewebsite hosting platform and at least one social networking platform.The non-electronic platforms may include a letterhead.

Referring to FIG. 1, a web server 100 may be configured to communicateelectronically with one or more data stores in order to store, update,and retrieve information from the data stores. The electroniccommunication may be over the Internet using any suitable electroniccommunication medium, communication protocol, and computer softwareincluding, without limitation: a wired connection, WiFi or otherwireless network, cellular network, or satellite network; TCP/IP oranother open or encrypted protocol; browser software, applicationprogramming interfaces, middleware, or dedicated software programs. Theelectronic communication may be over another type of network, such as anintranet or virtual private network, or may be via direct wiredcommunication interfaces or any other suitable interface fortransmitting data electronically between a data store and the web server100. In some embodiments, a data store may be a component of the webserver 100, such as by being contained in a memory module or on a diskdrive of the web server 100.

A data store may be any repository of information that is or can be madefreely or securely accessible by the web server 100. Suitable datastores include, without limitation: databases or database systems, whichmay be a local database, online database, desktop database, server-sidedatabase, relational database, hierarchical database, network database,object database, object-relational database, associative database,concept-oriented database, entity-attribute-value database,multi-dimensional database, semi-structured database, star schemadatabase, XML database, file, collection of files, spreadsheet, or othermeans of data storage located on a computer, client, server, or anyother storage device known in the art or developed in the future; filesystems; and electronic files such as web pages, spreadsheets, anddocuments. Each data store accessible by the web server 100 may containinformation that is relevant to the maintenance of the user's commondata, as described below.

In some embodiments, the common data may be stored as structured data ina content database 115. The common data may have any suitable format forstorage, depending on the type of common data. That is, common data canbe characters, integers or floating-point numbers, text strings, orderedor unordered lists, single-type or hybrid data structures, images,program code modules (i.e. compiled web application “widgets,” scriptinglanguage functions), pointers to other data (i.e. a URL or filelocation), files, and other objects. The common data may be structuredat any suitable level of abstraction. For example, in a relationaldatabase the common data may be organized into one or more tables,including nested tables, while in an object-oriented database the commondata may be organized into hierarchical data structures that parse thedata into its simplest elements (e.g. an “address” structure is parsedinto street address, city, state, and postal code).

The common data may depend on the type of user. For example, as shownwithout limitation in FIG. 2, an individual's common data 200 mayinclude a personal data set 205, an account data set 210, and a themedata set 215. The personal data set 205 may include data structures forname, location/hometown, birthdate (or simply age), contact information,and other data structures. The account data set 210 may include datastructures for identifying online locations to which the user may wantto direct visitors. Locations can include one or more social networkprofile pages, one or more personal websites, one or more favorite orrelevant websites or web pages, and one or more content streams such asa blog, RSS or other feed, YOUTUBE channel, and the like. Datastructures for the locations may include, for example, a location title,location type, and web address.

The theme data set 215 may include data structures representing elementsof a theme to be maintained across platforms. A theme, as used herein,is a unifying design used when presenting information on each platform.The theme may include the graphics, layout, and other aspects of thepresentation of the user's information, including common data. The datastructures may include files, such as images, layout templates (e.g.HTML or MICROSOFT WORD templates), cascading style sheet (CSS) modulesor other style sheets, and other program code files (i.e. PHP or Perlfiles). The data structures may further include color schemes, skins,and the like. Users can select a pre-built theme and may then have theoption of modifying one or more attributes (e.g., color or designelements) of the pre-built theme. The attributes may be stored in a CSSfile that can be utilized to control thematic elements across a numberof platforms. The theme may also contain decorative elements (designelements), user preference relating to what display elements (e.g.,information or widgets) are displayed on a particular website and howthe display elements should be rendered, customizations of the overallcolor palette, font selection, image placement, and the like. This themeinformation can be stored in the content database 115 or anotherdatabase.

In some cases, the user may specify a position of the elements withinthe theme or in a particular rendering. In some implementations, thispositional information can be utilized to infer how the user wishes touse each piece of information or widget. This may enable, for example,mapping display elements to be pulled from a website and utilized withinthe user's twitter profile page.

FIG. 3 illustrates an example of common data 300 for a business. Thebusiness common data 300 may include a basic data set 305, an accountdata set 310, a content data set 315, and a theme data set 320. Thebasic data set 305 may include data structures for business name, officelocation and contact information, photos, and business hours ofoperation. The account data set 310 may include data structures foridentifying online locations, as in the account data set 210 of FIG. 2described above. The content data set 315 may include data structuresfor the business' products. A product list may be a menu, partial orfull catalog, inventory, or similar list. The content data set 315 mayinclude other data structures to relate information across multipleplatforms, such as a news item data structure. The theme data set 320may include data structures for the business' theme as in the theme dataset 215 of FIG. 2 described above.

The web server 100 may maintain the common data using one or acombination of any suitable database querying and control schema, suchas MySQL, Oracle, IBM DB2, or another relational database managementsystem, JADE, DB4O, or another object-oriented database managementsystem, or other schema and associated systems. Maintaining the commondata may include executing queries or instructions upon the contentdatabase 115 in order to store new data elements, update or deleteexisting data elements, and retrieve data elements for distribution toone or more of the platforms.

Referring again to FIG. 1 and as described above, the user, which may bean individual or group of individuals, or a business or otherorganization represented by an employee, third party, or other agent,may access the web server 100 using an interface 105. The interface 105may be located on the web server 100 and communicated to the user overthe Internet or another computer network. Alternatively, the interface105 may be located on a device accessible to the user, such as a desktopor laptop computer, tablet computer, smartphone, personal dataassistant, server, mainframe, and the like. Alternatively, the interface105 may be located on one or more of the platforms. The platforms mayinclude one or more website hosting platforms 120 (e.g. GODADDY WebHosting), one or more social networking/profile listing platforms 125(e.g. FACEBOOK, TWITTER, GOOGLE Places for Business), one or morecontent feed platforms 130 (e.g. YOUTUBE, WORDPRESS), one or moredigital offline or downloadable-content platforms 135 (e.g. AMAZONSimple Email Service, FTP server), one or more non-digital electronicplatforms 140 (e.g. television, radio), and one or more non-electroniccollateral creation platforms 145 (e.g. printed media layout andpublishing software), with which the web server 100 may be in electroniccommunication in order to send or receive data. In general, the webserver 100 may be configured to communicate electronically with anysuitable platform in order to perform the common data maintenance inaccordance with this disclosure. A platform may comprise one or morelocal data stores. The local data store may be directly accessible bythe web server 100, or the respective platform may have an interface,such as an application programming interface (API) or another databasefrontend, through which the web server 100 may transmit and receivedata.

In some embodiments, one or more of the local data stores may containits own instance of the common data, which exists separately from thecentrally-maintained instance of the common data within the contentdatabase 115. To maintain consistency of the common data in theseembodiments, the web server 100 may retrieve current common data fromthe content database 115 according to the methods described herein, andtransmit it to one or more of the platforms, or each platform may,periodically or upon an event, query the web server 100 for the mostcurrent common data. With its locally-stored common data updated, eachplatform may then format the common data according to its nativeformats. In other embodiments, a single instance of the common data maybe maintained in the content database 115. The web server 100 mayretrieve, format, and deliver the common data to one or more of theplatforms as described further below. The local data stores do notretain a copy of the common data per se, but store the formatted data asdelivered by the web server 100.

One or more of the platforms may have one or more predefined publicationformats in which the common data and other content should be placed forpublication on the associated platform. A platform format may be a filetype or a combination of file types that the platform uses to publishdata. A platform format may additionally or alternatively be a template,theme, layout, or other organizational scheme that coordinates dataelements for display in the publication. In some embodiments, theplatform format may include a data element identification scheme, suchas a metadata tag scheme, that the web server 100 can access todetermine which common data elements should be included in the format.The platform format may further inform the web server 100 how to sizeand stylize the common data elements and where to place them. FIGS. 4-7illustrate non-limiting examples of platform formats for certainplatforms.

FIG. 4 illustrates an example template 400 for a user's website, whereinthe user is a restaurant. The template 400 includes page layouts 405-420for a plurality of web pages: a “home” page layout 405 for displayingbasic information; a “menu” page layout 410 for displaying the menu; an“about” page layout 415 for displaying restaurant background, such ashistory of the restaurant or biographies of the owners or chef; and a“contact” page layout 420 for displaying addresses, phone numbers,driving directions, email feedback forms, and the like. Each page layout405-420 includes one or more content regions 425-475 for receiving anddisplaying content, which may include common data. Each content region425-475 may be tagged with a content identifier. For each content region425-475 that contains common data, the web server 100 is configured torecognize that content region's content identifier and associate it withthe corresponding common data as the common data is structured in thecontent database 115. The web server 100 may thereby ascertain whethercommon data needs to be extracted from or updated on the user's website,according to the methods described below.

In the illustrated example template 400, each page layout 405-420includes a masthead region 425 and a navigation region 430. The mastheadregion 425 may display the entity's name, logo, other graphics, or acombination thereof. The web server 100 may determine that the mastheadregion 425 contains common data elements from at least the basic dataset 305 (i.e. entity name and logo), and potentially also the theme dataset 320 (i.e. other graphics or colors). The navigation region 430 maydisplay internal links to other web pages in the website and may containcolors or other common data from the theme data set 320. The home pagelayout 405 further contains a main graphic region 435, an attractionregion 440, a location region 445, and a news region 450. The maingraphic region 435 displays a relevant and eye-catching graphic, such asa photo of the storefront or of a dish served at the restaurant. Theattraction region 440 displays relevant and eye-catching textinformation, such as the restaurant's specials or other data that may becommon data located in the content data set 315 or another data set. Thelocation region 445 displays important contact information, such as amap locating the restaurant and the restaurant's address and phonenumber. The web server 100 may determine that the displayed informationis common data from the basic data set 305. The news region 750 displaysrecent information published about the restaurant, which may be commondata stored in the content data set 315.

The menu page layout 410 may further include a menu region 455 fordisplaying the restaurant's menu, which may be in the content data set315. The about page layout 415 may further include a bio image region460 and a biography region 465. The bio image region 460 displays arelevant graphic, such as a photo of the storefront or restaurantowners, which may be common data in the basic data set 305. Thebiography region 465 displays a narrative regarding the restaurant andits owners. While not illustrated in FIG. 3, the narrative may be commondata stored in one of the illustrated data sets, such as the contentdata set 315, or another data set. The contact page layout 420 mayfurther include an info region 470 and a feedback region 475. The inforegion 470 displays contact information, such as phone number, address,map, and the like. The web server 100 may determine that the displayedinformation is common data from the basic data set 305. The feedbackregion 475 displays a form for website visitors to fill out and submitto the restaurant. The form structure may be stored in the template.

FIG. 5 illustrates a templated FACEBOOK layout 500 for the restaurantthat has the website of FIG. 4. The FACEBOOK layout 500 includes pagelayouts 505-420 for a plurality of web pages: a “home” page layout 505for displaying the restaurant's profile information; an “about” pagelayout 510 for displaying maps, addresses, phone numbers, other contactinformation, and biographical information; an “events” page layout 515for displaying events at the restaurant; and a “notes” page layout 520for displaying commentary by the restaurant. Each page layout 505-520includes one or more content regions 525-585 for receiving anddisplaying content, which may include common data. Each content region525-585 may be tagged with a content identifier. For each content region525-585 that contains common data, the web server 100 is configured torecognize that content region's content identifier and associate it withthe corresponding common data as the common data is structured in thecontent database 115. In some embodiments, the content identifier for aregion 525-585 may match a corresponding region 425-475 of the website400 that contains the same common data as the region 525-585 on theFACEBOOK layout 500. In other embodiments, the FACEBOOK layout 500 mayhave different region identifiers from the website 400 that the webserver 100 is nevertheless configured to recognize. The web server 100may thereby ascertain whether common data needs to be extracted from orupdated on the user's FACEBOOK profile, according to the methodsdescribed below.

In the illustrated example home page layout 505, a cover photo region525 displays a photo which may be common data from one of the data setsin the content database 115. A profile photo region 530 displays anothercommon photo, such as the restaurant's logo, which may be in the basicdata set 305. An entity name region 535 displays the restaurant's name,which is common data in the basic data set 305. A basic informationregion 540 displays the restaurant's address, phone number, hours ofoperation, type of cuisine, and other common data from the basic dataset 305. A navigation region 545 displays internal links to other pagesof the user's FACEBOOK profile. News regions 550, 555 display recentinformation published about the restaurant, some of which may be commondata stored in the content data set 315.

The about page layout 510 may include a map region 560 for displaying amapped location of the restaurant, which may be derived from addressinformation in the basic data set 305. A biography region 565 displays anarrative regarding the restaurant and its owners. While not illustratedin FIG. 3, the narrative may be common data stored in one of theillustrated data sets, such as the content data set 315, or another dataset. A restaurant info region 570 displays contact information, such asphone number, address, hours of operation, and the like, which mayinclude common data from the basic data set 305. A platforms region 575displays links to other online platforms where the restaurant has apresence. The information for the links may include common data from theaccount data set 310.

The events page layout 515 may include an event list region 580 forlisting information about events at the restaurant. For example, anevent can include a title, photo, date, time, and cost, which may becommon data elements stored in an event data structure in the contentdata set 315. Similarly, the notes page layout 520 may include a list ofnotes, news items, articles, or other content, each item being stored ina data structure as common data in the content data set 315.

FIG. 6 illustrates an example template for a letterhead 600, and FIG. 7illustrates an example template for a business card 700, for thebusiness that has the website of FIG. 4. The templates may be used in asoftware program for generating layouts of the letterhead 600 andbusiness card 700, before the letterhead and business cards are printed,and the templates may include identifiable regions, as described withrespect to FIGS. 4 and 5 above, that the web server 100 may use toidentify common data to be inserted into the regions. In each exampletemplate 600, 700, a logo region 605, 705 displays the business logo,which may be common data in the basic data set 305. An address region610, 710 displays the contact information contained in the basic dataset 305. An employee region 615, 715 includes data identifying theemployee, which may be common data or other data that is extracted froma different data store. A background region 620, 720 may includegraphics, colors, or other elements of a platform-spanning theme, whichmay be common data in the theme data set 320.

FIG. 8 illustrates an embodiment of a method the web server 100 may useto maintain the common data across multiple platforms. At step 800, theweb server 800 may receive common data. The common data may be receivedfrom the user through an interface 105 as described above. The interface105 may allow the user to identify the types of common data beingentered, such as by providing one or more fillable forms or by allowingthe user to generate its own data tags. Alternatively or additionally,the interface 105 or the web server 100 may be configured to analyze theentered common data to determine the data types and parse the data intodata structures for storage in the content database 115. The web servermay additionally or alternatively receive the common data at step 800from one or more of the platforms with which the web server 100 is incommunication. In some embodiments, the system of FIG. 1 may beconfigured so that when a user updates common data on one of theplatforms, that platform transmits the changed or added common data tothe web server 100. For example, when the user changes its profile photoon its FACEBOOK profile, the new photo may be transmitted to the webserver 100 or retrieved by the web server 100. In that case, the usermay provide the web server 100 with access credentials to access one ormore platforms (such as FACEBOOK) using a suitable user accountmanagement system. Having been provided with credentials, the web server100 can poll the platform through a suitable API, such as a FACEBOOKAPI, to determine whether information, such as text, photos, or videos,have been modified. If so, the web server 100 can retrieve the modifiedinformation to incorporate that information into the common data.

In other embodiments, the web server 100 or a separate interface (notshown) may be configured to periodically retrieve the common data fromeach platform, so that it is received on the web server 100.

At step 805, the web server 100 may compare the received common data tothe common data stored in the content database 115. If necessary, theweb server 100 may first identify the common data that was received. Insome embodiments, the web server 100 may identify the common data usingthe data element identification scheme of each platform. Comparing thecommon data may include querying the content database 115 for the samedata elements that were received at step 800 and determining if the dataelements in the content database 115 match those received. If there areno data elements in the content database 115 that correspond to thereceived data elements, the received data elements comprise new commondata that, at step 810, the web server 100 may add to the contentdatabase 115. Otherwise, if the data elements match, no update isneeded, and if the data elements do not match, the web server 100updates the common data in the content database 115 at step 815.

At step 820, the web server 100 identifies which platforms should beupdated with the received common data. To enable accurate and preciseupdating of the platforms, each platform is analyzed to determine apurpose or function of each customizable element or data field providedby the platform. The common data is then analyzed to determine whichtypes of common data map to the customizable elements or data fieldsoffered by each platform. The suitability of particular data elements inthe common data to map to particular elements or data fields of aplatform can be scored using any appropriate scoring algorithm. Oneapproach may include scoring the intent of each image on the user'scommon data in order to rank likelihood of that data to map to thereceiving platform's configurable data field. For example, one componentof Twitter profile banner photo scoring is knowing a large dominantimage “hero image” on the home page of a website near the top middle islikely to map. Alternatively, the dimensions of images contained in thecommon data may be utilized to determine the suitability of a particularimage for an image field of a particular platform. If the dimensionsmatch or are sufficiently close to one another (e.g., their dimensionsfall within a threshold range) the image in common data may bedetermined to be suitable for use in the platform's image

When updating a platform with new common data, the update may involveretransmitting all suitable common data (or a subset thereof) in newdata transmissions or, alternatively, only transmitting or updating adelta from the old values stored with the platform.

In some embodiments, the content database 115 or another data storeaccessible by the web server 100 may include a structured list ofplatforms to which the common data should be delivered when it isupdated. The structured list may also include, for each platform, accessinformation such as a login/password combination that the web server 100may use to deliver common data. As not all platforms may require everyelement of common data, the structured list may further include, foreach platform, a sub-list of the common data elements that should betransmitted to the platform when such elements are changed. The sub-listof common data elements may include formats particular to each platformfor one or more of the data elements. For example, a first format for acommon profile photo may have a first size of 200×200 pixels forFACEBOOK and a second format may have a second size of 130×130 pixelsfor TWITTER. The structured list may additionally or alternativelyinclude metadata tags or other identifiers that associate a particulardata element with its appropriate element in a predefined publishingformat.

At step 825, the web server 100 may update the platforms identified asneeding an update of the common data. In some embodiments, the webserver 100 may transmit the new or changed common data to the platformsin a raw or partially formatted state. Examples of such transmissioninclude a raw data stream, raw or rich text file, or a data structure ina readable format such as XML, JSON, MICROSOFT EXCEL spreadsheet orMICROSOFT ACCESS database entries. Each platform may then extract thecommon data from the transmission and format the common data accordingto its own purposes. Alternatively, the new or changed common data maybe transmitted to a platform using an API provided by the platform. Inthat case, the new or changed common data may be formatted in accordancewith requirements established by that API. In some cases, the platform'sAPI will be a publicly available API for which documentation is readilyavailable. In other cases, the API will not be public and instead may beprovided pursuant to an agreement between the platform owner and theoperator of the web server 100.

Additionally or alternatively, the web server 100 may format the commondata according to one or more of the publishing formats used by each ofthe platforms. The web server 100 may retain or store in the contentdatabase 115 or another data store, one or more templates, such as thoseillustrated in FIG. 4-7, for each platform's publishing formats.Referring to FIG. 9, some embodiments of the step of updating theplatforms may include, at step 900, identifying the templates of eachplafform that contain regions that should be updated with the commondata.

For example, when publishing data to a third party platform, such asTWITTER or FACEBOOK, a number of techniques may be utilized to identifydata stored within the common data that map to one or more displayelements of the third party plafform. For example, if a third partyplatform has a background image display element, a suitable image can beidentified in the common data. One approach for identifying a suitablebackground image in the common data can include identifying an imagethat has been used as a background image in the user's website (oralternatively the background color of the user's website).

If a third party platform calls for a header image or cover photo, thecommon data can be analyzed using a scoring criteria to identify imagesthat can be used as header images or cover photos. Example criteria thatmay be used to score an image include whether the image is used on theuser's home page, whether the image is a “hero image” (i.e., the largestimage on a web page, located at the top-middle of a web page, firstimage in a slideshow, etc.), whether the shape of the image matches thedimensions called for by the third party platform, and the like.

If a third party platform calls for a profile picture, the common datacan be analyzed using a scoring criteria to identify images that can beused as profile images. Example criteria that may be used to score animage include whether an image in the common data has been placed intothe user's website using absolute positioning, with more points beinggiven to images located in the top-left of a web page and, if nopictures are on the left of the web page, more points are awarded toimages on the right side of the web page, additional points may be givento images that are closer to the dimensions of a profile image (e.g.,images that have square dimensions), the file name of the uploaded image(e.g., more points will be awarded to images that have file names oflogo.gif), and the like.

In the specific case of the third party platform being TWITTER, thecommon data can be analyzed to determine a suitable list of handles thatthe user may wish to follow (and in some cases, the user's TWITTERaccount may be accessed to cause the account to follow the identifiedlist of handles). For example, the common data may be utilized toidentify an industry category for the user or the user's business. Then,based upon that industry determination, TWITTER's auto-follow API may beutilized to determine a list of handles to follow.

In some cases, the scoring criteria described above can be updated,refined, and otherwise modified based upon how often users modify imagesthat are automatically selected from the common data.

At step 905, for each template, the web server 100 loads the templateand then, at step 910, the web server 100 identifies the regionscontaining common data that should be changed. At step 915, the webserver 100 determines, from HTML tags, metatags, or other formattingtags, how to format the common data for inclusion in the region. At step920, the web server 100 formats the common data according to thedetermined format. The web server 100 may repeat steps 905-920 for eachidentified template. At step 925, the web server 100 transmits theformatted common data to the platform, by transmitting the template, theregion, or the formatted data itself.

In accordance with the described system and methods, the web server 100may create, from structured data stored in a content database 115, oneor more web pages of a website. Furthermore, the web server 100 mayreceive some or all of the common data elements from the user during thewebsite creation process, and may store or update the common dataelements in one or more data structures. In one embodiment, the webserver 100 may provide, through the interface 105, a series of promptsfor receiving information that the user may want to display on the webpages. The prompts may be used to derive the proper templates to be usedfor creating the website. For example, the web server 100 may prompt theuser to enter the type of business (i.e. restaurant, mechanic, massageparlor, etc.) that the website will promote. The user's input allows theweb server 100 to select a template that has regions for containing therelevant content, or to select a subset of templates and provide thetemplates to the user for selection. The information provided by theuser may include content information to be incorporated into the regionsof the web page templates. The web server 100 may store the common datain data structures. The data structures may be stored in a database asdescribed above, or alternatively the data structures may be stored asweb pages in any suitable markup language. In the latter case, commondata elements may be identified through Microdata or other tagging, sothat the web server 100 may perform the common data maintenance methodsdescribed above by extracting elements from and storing elements withinthe web pages, rather than a central database.

Furthermore, the web server 100 may create different versions of thewebsite in order to serve requested website content to requestingdevices 110 of varying capabilities. A requesting device 110 may be adevice for which web pages are typically designed without concern fordisplay, user interface, processing, or Internet bandwidth limitations,including without limitation personal and workplace computing systemssuch as desktops, laptops, and thin clients, each with a monitor orbuilt-in large display (collectively “PCs”). A requesting device 110 maybe a device that cannot display the informational and functional contentof web pages that are designed for viewing on PCs. Such limited devicesinclude mobile devices such as mobile phones and tablet computers, andmay further include other similarly limited devices for whichconventional websites are not ordinarily designed. Mobile devices, andmobile phones in particular, have a significantly smaller display sizethan PCs, and may further have significantly less processing power and,if receiving data over a cellular network, significantly less Internetbandwidth. The web server 100 may use the same data from the contentdatabase 115 used to create the website to also create publicationsacross other platforms as described above.

Referring to FIG. 10, a system 950 for performing the common datamaintenance methods described above may include the web server 100 and aplurality of modules for performing one or more steps of the methods.The modules may be hardware or software-based processing modules locatedwithin the web server 100, in close physical vicinity to the web server100, or remove from the web server 100 and implemented as standalonecomputer servers or as components of one or more additional servers. Themodules may include, without limitation: a user interface module 955 forproviding input/output capabilities between the system 800 and the user;a data retrieval module 960 for performing queries and modifications ofthe content database 115 and other data stores; a data processing module965 for evaluating and comparing received and retrieved data; aformatting module 970, which may be a component of the data processingmodule 965 or a separate module, and which populates an identifiedtemplate as described above and stores the template; one or more datastorage modules 975 for storing templates, common data structuringparadigms, and related data; and a communication module 980 forcommunicating with the various platforms.

The schematic flow chart diagrams included are generally set forth aslogical flow-chart diagrams. As such, the depicted order and labeledsteps are indicative of one embodiment of the presented method. Othersteps and methods may be conceived that are equivalent in function,logic, or effect to one or more steps, or portions thereof, of theillustrated method. Additionally, the format and symbols employed areprovided to explain the logical steps of the method and are understoodnot to limit the scope of the method. Although various arrow types andline types may be employed in the flow-chart diagrams, they areunderstood not to limit the scope of the corresponding method. Indeed,some arrows or other connectors may be used to indicate only the logicalflow of the method. For instance, an arrow may indicate a waiting ormonitoring period of unspecified duration between enumerated steps ofthe depicted method. Additionally, the order in which a particularmethod occurs may or may not strictly adhere to the order of thecorresponding steps shown.

The present invention has been described in terms of one or morepreferred embodiments, and it should be appreciated that manyequivalents, alternatives, variations, and modifications, aside fromthose expressly stated, are possible and within the scope of theinvention.

We claim:
 1. A method, comprising: receiving, from a user, contentinformation for building a website for the user, the content informationcomprising one or more common data elements for a plurality ofthird-party platforms; extracting the common data elements from thecontent information; and for each third-party platform: identifying thecommon data elements that map to one or more display elements of thethird-party platform; accessing the third-party platform; andtransmitting the identified common data elements to the third-partyplatform.
 2. The method of claim 1, further comprising: storing thecommon data elements in a stored data structure; receiving one or moreupdated common data elements for the plurality of third-party platforms;comparing the updated common data elements to one or more of the commondata elements in the stored data structure; for any of the updatedcommon data elements that do not match the common data elements to whichthe updated common data elements are compared: storing the updatedcommon data element in the stored data structure in place of the commondata element; and transmitting the updated common data element to one ormore of the plurality of third-party platforms.
 3. A method, comprising:receiving one or more data elements comprising common data for aplurality of platforms; comparing the data elements to one or moreelements of a stored data structure; and if the data elements do notmatch the elements of the stored data structure to which the dataelements are compared, transmitting the data elements to one or more ofthe plurality of platforms.
 4. The method of claim 3, further comprisingproviding an interface to a user and allowing the user to enter the oneor more data elements on the interface.
 5. The method of claim 4,wherein the interface is provided on a web server and is accessible bythe user over the internet.
 6. The method of claim 4, wherein receivingthe one or more data elements comprises: prompting the user to enterinto the interface information for building a website; receiving theinformation from the user; and extracting the one or more data elementsfrom the information.
 7. The method of claim 6, further comprising:creating one or more web pages containing the information entered by theuser; and storing the one or more web pages as the stored datastructure.
 8. The method of claim 6, wherein prompting the user to enterinformation for building a website comprises: retrieving a template fora web page, the template comprising one or more regions formatted todisplay common data; and prompting the user to enter the informationintended to be displayed in each of the regions.
 9. The method of claim4, wherein the interface is provided on one of the platforms.
 10. Themethod of claim 3, wherein receiving the one or more data elementscomprises receiving the one or more data elements from one of theplurality of platforms after the one or more data elements are enteredonto the platform.
 11. The method of claim 3, wherein the plurality ofplatforms includes one or more online platforms.
 12. The method of claim11, wherein the plurality of platforms further includes one or morenon-electronic platforms.
 13. The method of claim 3, whereintransmitting the data elements to one or more of the plurality ofplatforms comprises: identifying one or more of the platforms asrequiring an update to the common data; formatting the data elementsaccording to one or more publishing formats of the identified platforms;and sending the formatted data elements to the identified platforms. 14.The method of claim 13, wherein formatting the data elements comprises:from one or more templates formatted according to one of the publishingformats, identifying one or more of the templates as containing one ormore of the elements of the data structure to which the received dataelements are compared; identifying, within the one or more identifiedtemplates, one or more regions containing common data; and formattingthe data elements for inclusion in the identified regions.
 15. Themethod of claim 3, further comprising analyzing each platform todetermine which of the elements of the stored data structure map to eachdata field and customizable element provided by the platform.
 16. Themethod of claim 3 wherein receiving the one or more elements comprises:accessing one of the platforms; polling the platform to determinewhether any of the common data has been modified; and retrieving themodified common data as the one or more elements.
 17. A method,comprising: receiving, from a web server, one or more data elementscomprising common data for a plurality of platforms; and storing each ofthe data elements according to a publishing format.
 18. The method ofclaim 17, further comprising providing to the web server one or moredata fields to which the web server maps the one or more data elements.19. A method, comprising: receiving one or more data elements comprisingcommon data for a plurality of platforms; and transmitting one or moreof the data elements to one or more of the platforms.
 20. The method ofclaim 19, wherein transmitting one or more of the data elements to oneor more of the platforms comprises identifying which of the plurality ofplatforms should receive one or more of the data elements.